ci: classify string_array_length_9160 so e2e-scoped stops failing every PR - #9193
Conversation
…ry PR `crates/perry-codegen/tests/string_array_length_9160.rs` landed with PerryTS#9160 without a `_CODEGEN_SUITES` entry. That map is complete-by-construction for the crate — `_assert_map_covers_codegen_suites` requires every `crates/perry-codegen/tests/*.rs` to be either mapped or excluded — so `--self-test` failed, and since `e2e-scoped` runs the self-test before it does anything else, the job (and `pr-gate` behind it) has been red on every core PR since that merge. The gate did exactly what PerryTS#7708 built it to do: refuse to let a suite be silently invisible to per-PR CI. It goes in the map rather than in `SUITE_EXCLUSIONS` because it passes: `cargo test -p perry-codegen --test string_array_length_9160` is 1/1 green on 84185b5, and it is the same shape as the other 28 mapped suites — an in-process compile of hand-built HIR, 0.02 s of test time. An exclusion entry requires a FAILING test and an issue number, and there is neither. Verified: `--self-test` passes; a `crates/perry-codegen/src/` change now selects the suite at the mapped 300 s timeout, and a direct edit of the suite file still selects it at the named 1500 s one. Claude-Session: https://claude.ai/code/session_01TE3JXAYXtdnKcLu8TCFWR6
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 8 included reviews per hour; 5 remain after this review. 📝 WalkthroughWalkthroughThe CI E2E scope configuration now includes ChangesCodegen E2E suite selection
Estimated code review effort: 1 (Trivial) | ~2 minutes Merge Risk: ⚪ Minimal · up to This change classifies the existing passing code-generation suite so scoped end-to-end checks can select it correctly; it does not alter product runtime behavior. No actionable merge-blocking risk remains after normal checks and review. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Full details: Description checkExplanation The description clearly explains the failure, root cause, one-line fix, mapping rationale, and verification results. It does not use the template headings or provide an explicit checklist, related-issue section, or screenshots section, but the available required information is substantially complete. Full details: Docstring CoverageExplanation No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1 files. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Merged. Verified the subject rather than the diff: Worth knowing: this exact change is also carried inside #9189's branch as a separate commit (identical diff, identical blob hashes |
e2e-scopedis red on every core PR right now, and has been since #9160 merged. It fails at its very first step:crates/perry-codegen/tests/string_array_length_9160.rslanded without a_CODEGEN_SUITESentry. That map is complete-by-construction for the crate —_assert_map_covers_codegen_suitesrequires everycrates/perry-codegen/tests/*.rson disk to be either mapped or listed inSUITE_EXCLUSIONS— so--self-testfails, ande2e-scopedruns the self-test before it does anything else.pr-gatefails behind it. Reproduced on a clean84185b5656, no local changes.The gate is doing exactly what #7708 built it for: refusing to let a new suite be silently invisible to per-PR CI. The fix is the one-line classification it is asking for.
Map, not exclusion.
SUITE_EXCLUSIONSentries require a failing test and an issue number, and there is neither —cargo test -p perry-codegen --test string_array_length_9160is 1/1 green on84185b5656. The suite is also the same shape as the other 28 mapped ones: an in-process compile of hand-built HIR, 0.02 s of test time, noperry compilesubprocess, no link, no runtime. It belongs in the map on its merits, not just to quiet the gate.Verified
python3 scripts/ci_e2e_scope.py --self-test→ok(fails before the change)crates/perry-codegen/src/change now selects it:perry-codegen string_array_length_9160 300(mapped timeout)1500(named timeout)cargo test -p perry-codegen --test string_array_length_9160→1 passed; 0 failedNo changelog fragment:
scripts/only, nothing undercrates/.https://claude.ai/code/session_01TE3JXAYXtdnKcLu8TCFWR6
Summary by CodeRabbit
string_array_length_9160end-to-end test suite to the set of tests selected for relevant code generation changes.